home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / DJGPP / DJSRC111.ZIP / go32 / vcpi.h < prev    next >
C/C++ Source or Header  |  1993-06-20  |  1KB  |  50 lines

  1. /*  This is file VCPI.H  */
  2. /*
  3. **  Copyright (C) Aug 5th 1991 Y.Shibata
  4. **  This file is distributed under the term of GNU GPL.
  5. **
  6. */
  7. #ifndef _VCPI_H_
  8. #define _VCPI_H_
  9.  
  10. /*  Change Protect Mode Structure  */
  11. typedef    struct
  12.     {
  13.     word32    page_table;    /*  Page Table Address  */
  14.     word32    gdt_address;    /*  GDT Address         */
  15.     word32    idt_address;    /*  IDT Address         */
  16.     word16    ldt_selector;    /*  LDT Selector        */
  17.     word16    tss_selector;    /*  TR  Selector        */
  18.     word32    entry_eip;    /*  Protect Mode Entry Address  */
  19.     word16    entry_cs;
  20.     }    CLIENT;
  21.  
  22. typedef    struct
  23.     {
  24.     word32    offset32;
  25.     word16    selector;
  26.     }    far32;
  27.  
  28. typedef    struct
  29.     {
  30.     word16    limit_16;
  31.     word32    base_32;
  32.     }    SYS_TBL;
  33.  
  34. word16    vcpi_present(void);    /*  VCPI Installed Check         */
  35. word16    vcpi_maxpage(void);    /*  VCPI Max Page Number     */
  36. word16    vcpi_capacity(void);    /*  VCPI Unallocated Page Count  */
  37. word16    vcpi_alloc(void);    /*  VCPI Allocate Page           */
  38. void    vcpi_free(word16);    /*  VCPI Deallocate Pgae         */
  39. word16    vcpi_get_pic(void);    /*  VCPI Get 8259A INT Vector    */
  40. void    vcpi_set_pic(word16);    /*  VCPI Set 8259A INT Vector    */
  41. word16    vcpi_get_secpic(void);    /*  VCPI Get 8259A INT Vector slave */
  42. void    vcpi_set_pics(word16,word16);    /*  VCPI Set 8259A INT Vectors master,slave */
  43.  
  44. word32    get_interface(void far *table,void *g);
  45.  
  46. word16    emm_present(void);    /*  EMM Installed Check          */
  47. void    ems_free(word16);    /*  Deallocated EMS Pages        */
  48.  
  49. #endif
  50.